// default package
// Generated 28 Jul, 2014 8:04:07 PM by Hibernate Tools 3.4.0.CR1
package com.galaxy.bean;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;

/**
 * SalesFlatCreditmemoGrid generated by hbm2java
 */
@Entity
@Table(name = "sales_flat_creditmemo_grid", catalog = "magento", uniqueConstraints = @UniqueConstraint(columnNames = "increment_id"))
public class SalesFlatCreditmemoGrid implements java.io.Serializable {

	private int entityId;
	private SalesFlatCreditmemo salesFlatCreditmemo;
	private CoreStore coreStore;
	private BigDecimal storeToOrderRate;
	private BigDecimal baseToOrderRate;
	private BigDecimal grandTotal;
	private BigDecimal storeToBaseRate;
	private BigDecimal baseToGlobalRate;
	private BigDecimal baseGrandTotal;
	private int orderId;
	private Integer creditmemoStatus;
	private Integer state;
	private Integer invoiceId;
	private String storeCurrencyCode;
	private String orderCurrencyCode;
	private String baseCurrencyCode;
	private String globalCurrencyCode;
	private String incrementId;
	private String orderIncrementId;
	private Date createdAt;
	private Date orderCreatedAt;
	private String billingName;

	public SalesFlatCreditmemoGrid() {
	}

	public SalesFlatCreditmemoGrid(SalesFlatCreditmemo salesFlatCreditmemo,
			int orderId) {
		this.salesFlatCreditmemo = salesFlatCreditmemo;
		this.orderId = orderId;
	}

	public SalesFlatCreditmemoGrid(SalesFlatCreditmemo salesFlatCreditmemo,
			CoreStore coreStore, BigDecimal storeToOrderRate,
			BigDecimal baseToOrderRate, BigDecimal grandTotal,
			BigDecimal storeToBaseRate, BigDecimal baseToGlobalRate,
			BigDecimal baseGrandTotal, int orderId, Integer creditmemoStatus,
			Integer state, Integer invoiceId, String storeCurrencyCode,
			String orderCurrencyCode, String baseCurrencyCode,
			String globalCurrencyCode, String incrementId,
			String orderIncrementId, Date createdAt, Date orderCreatedAt,
			String billingName) {
		this.salesFlatCreditmemo = salesFlatCreditmemo;
		this.coreStore = coreStore;
		this.storeToOrderRate = storeToOrderRate;
		this.baseToOrderRate = baseToOrderRate;
		this.grandTotal = grandTotal;
		this.storeToBaseRate = storeToBaseRate;
		this.baseToGlobalRate = baseToGlobalRate;
		this.baseGrandTotal = baseGrandTotal;
		this.orderId = orderId;
		this.creditmemoStatus = creditmemoStatus;
		this.state = state;
		this.invoiceId = invoiceId;
		this.storeCurrencyCode = storeCurrencyCode;
		this.orderCurrencyCode = orderCurrencyCode;
		this.baseCurrencyCode = baseCurrencyCode;
		this.globalCurrencyCode = globalCurrencyCode;
		this.incrementId = incrementId;
		this.orderIncrementId = orderIncrementId;
		this.createdAt = createdAt;
		this.orderCreatedAt = orderCreatedAt;
		this.billingName = billingName;
	}

	@GenericGenerator(name = "generator", strategy = "foreign", parameters = @Parameter(name = "property", value = "salesFlatCreditmemo"))
	@Id
	@GeneratedValue(generator = "generator")
	@Column(name = "entity_id", unique = true, nullable = false)
	public int getEntityId() {
		return this.entityId;
	}

	public void setEntityId(int entityId) {
		this.entityId = entityId;
	}

	@OneToOne(fetch = FetchType.LAZY)
	@PrimaryKeyJoinColumn
	public SalesFlatCreditmemo getSalesFlatCreditmemo() {
		return this.salesFlatCreditmemo;
	}

	public void setSalesFlatCreditmemo(SalesFlatCreditmemo salesFlatCreditmemo) {
		this.salesFlatCreditmemo = salesFlatCreditmemo;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "store_id")
	public CoreStore getCoreStore() {
		return this.coreStore;
	}

	public void setCoreStore(CoreStore coreStore) {
		this.coreStore = coreStore;
	}

	@Column(name = "store_to_order_rate", precision = 12, scale = 4)
	public BigDecimal getStoreToOrderRate() {
		return this.storeToOrderRate;
	}

	public void setStoreToOrderRate(BigDecimal storeToOrderRate) {
		this.storeToOrderRate = storeToOrderRate;
	}

	@Column(name = "base_to_order_rate", precision = 12, scale = 4)
	public BigDecimal getBaseToOrderRate() {
		return this.baseToOrderRate;
	}

	public void setBaseToOrderRate(BigDecimal baseToOrderRate) {
		this.baseToOrderRate = baseToOrderRate;
	}

	@Column(name = "grand_total", precision = 12, scale = 4)
	public BigDecimal getGrandTotal() {
		return this.grandTotal;
	}

	public void setGrandTotal(BigDecimal grandTotal) {
		this.grandTotal = grandTotal;
	}

	@Column(name = "store_to_base_rate", precision = 12, scale = 4)
	public BigDecimal getStoreToBaseRate() {
		return this.storeToBaseRate;
	}

	public void setStoreToBaseRate(BigDecimal storeToBaseRate) {
		this.storeToBaseRate = storeToBaseRate;
	}

	@Column(name = "base_to_global_rate", precision = 12, scale = 4)
	public BigDecimal getBaseToGlobalRate() {
		return this.baseToGlobalRate;
	}

	public void setBaseToGlobalRate(BigDecimal baseToGlobalRate) {
		this.baseToGlobalRate = baseToGlobalRate;
	}

	@Column(name = "base_grand_total", precision = 12, scale = 4)
	public BigDecimal getBaseGrandTotal() {
		return this.baseGrandTotal;
	}

	public void setBaseGrandTotal(BigDecimal baseGrandTotal) {
		this.baseGrandTotal = baseGrandTotal;
	}

	@Column(name = "order_id", nullable = false)
	public int getOrderId() {
		return this.orderId;
	}

	public void setOrderId(int orderId) {
		this.orderId = orderId;
	}

	@Column(name = "creditmemo_status")
	public Integer getCreditmemoStatus() {
		return this.creditmemoStatus;
	}

	public void setCreditmemoStatus(Integer creditmemoStatus) {
		this.creditmemoStatus = creditmemoStatus;
	}

	@Column(name = "state")
	public Integer getState() {
		return this.state;
	}

	public void setState(Integer state) {
		this.state = state;
	}

	@Column(name = "invoice_id")
	public Integer getInvoiceId() {
		return this.invoiceId;
	}

	public void setInvoiceId(Integer invoiceId) {
		this.invoiceId = invoiceId;
	}

	@Column(name = "store_currency_code", length = 3)
	public String getStoreCurrencyCode() {
		return this.storeCurrencyCode;
	}

	public void setStoreCurrencyCode(String storeCurrencyCode) {
		this.storeCurrencyCode = storeCurrencyCode;
	}

	@Column(name = "order_currency_code", length = 3)
	public String getOrderCurrencyCode() {
		return this.orderCurrencyCode;
	}

	public void setOrderCurrencyCode(String orderCurrencyCode) {
		this.orderCurrencyCode = orderCurrencyCode;
	}

	@Column(name = "base_currency_code", length = 3)
	public String getBaseCurrencyCode() {
		return this.baseCurrencyCode;
	}

	public void setBaseCurrencyCode(String baseCurrencyCode) {
		this.baseCurrencyCode = baseCurrencyCode;
	}

	@Column(name = "global_currency_code", length = 3)
	public String getGlobalCurrencyCode() {
		return this.globalCurrencyCode;
	}

	public void setGlobalCurrencyCode(String globalCurrencyCode) {
		this.globalCurrencyCode = globalCurrencyCode;
	}

	@Column(name = "increment_id", unique = true, length = 50)
	public String getIncrementId() {
		return this.incrementId;
	}

	public void setIncrementId(String incrementId) {
		this.incrementId = incrementId;
	}

	@Column(name = "order_increment_id", length = 50)
	public String getOrderIncrementId() {
		return this.orderIncrementId;
	}

	public void setOrderIncrementId(String orderIncrementId) {
		this.orderIncrementId = orderIncrementId;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "created_at", length = 19)
	public Date getCreatedAt() {
		return this.createdAt;
	}

	public void setCreatedAt(Date createdAt) {
		this.createdAt = createdAt;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "order_created_at", length = 19)
	public Date getOrderCreatedAt() {
		return this.orderCreatedAt;
	}

	public void setOrderCreatedAt(Date orderCreatedAt) {
		this.orderCreatedAt = orderCreatedAt;
	}

	@Column(name = "billing_name")
	public String getBillingName() {
		return this.billingName;
	}

	public void setBillingName(String billingName) {
		this.billingName = billingName;
	}

}
